package com.example.ibsp_demo.mapper.log;

import com.example.ibsp_demo.pojo.log.AdminOperationLog; // 替换为实际包路径
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;

@Mapper
public interface AdminOperationLogMapper {

    // 根据主键查询
    AdminOperationLog selectByLogId(Integer logId);

    // 查询管理员的操作日志（分页）
    List<AdminOperationLog> selectByAid(Map<String, Object> params);

    // 分页查询所有操作日志（按时间/类型筛选）
    List<AdminOperationLog> selectAll(Map<String, Object> params);

    // 统计管理员的操作次数
    Integer countByAidAndType(Map<String, Object> params);

    // 插入操作日志
    int insert(AdminOperationLog log);

    // 根据主键删除（谨慎使用，建议保留审计记录）
    int deleteByLogId(Integer logId);

    // 批量删除过期日志（定时任务清理）
    int deleteExpiredLogs(Map<String, Object> timeParams);

}